import type { PageParam, PageResult } from '@vben/request';
import type { Dayjs } from 'dayjs';

import { requestClient } from '#/api/request';

export namespace SysAbsenceRuleEmpeApi {
  /** 员工离岗规则信息 */
  export interface SysAbsenceRuleEmpe {
    id: number; // 编号
    ruleId?: number; // 离岗规则id
    userid?: string; // 员工userid
    cameraCode: string; // 摄像头编码
  }
}

/** 查询员工离岗规则分页 */
export function getSysAbsenceRuleEmpePage(params: PageParam) {
  return requestClient.get<PageResult<SysAbsenceRuleEmpeApi.SysAbsenceRuleEmpe>>('/moxi/sys-absence-rule-empe/page', { params });
}

/** 查询员工离岗规则详情 */
export function getSysAbsenceRuleEmpe(id: number) {
  return requestClient.get<SysAbsenceRuleEmpeApi.SysAbsenceRuleEmpe>(`/moxi/sys-absence-rule-empe/get?id=${id}`);
}

/** 新增员工离岗规则 */
export function createSysAbsenceRuleEmpe(data: SysAbsenceRuleEmpeApi.SysAbsenceRuleEmpe) {
  return requestClient.post('/moxi/sys-absence-rule-empe/create', data);
}

/** 修改员工离岗规则 */
export function updateSysAbsenceRuleEmpe(data: SysAbsenceRuleEmpeApi.SysAbsenceRuleEmpe) {
  return requestClient.put('/moxi/sys-absence-rule-empe/update', data);
}

/** 删除员工离岗规则 */
export function deleteSysAbsenceRuleEmpe(id: number) {
  return requestClient.delete(`/moxi/sys-absence-rule-empe/delete?id=${id}`);
}

/** 批量删除员工离岗规则 */
export function deleteSysAbsenceRuleEmpeList(ids: number[]) {
  return requestClient.delete(`/moxi/sys-absence-rule-empe/delete-list?ids=${ids.join(',')}`)
}

/** 导出员工离岗规则 */
export function exportSysAbsenceRuleEmpe(params: any) {
  return requestClient.download('/moxi/sys-absence-rule-empe/export-excel', params);
}

/** 批量新增员工离岗规则 */
export function createBatchSysAbsenceRuleEmpe(data: SysAbsenceRuleEmpeApi.SysAbsenceRuleEmpe) {
    return requestClient.post('/moxi/sys-absence-rule-empe/createBatch', data);
  }

